A variety of techniques are known for providing a viewer with the visual perception of a 3D image. However, only holography offers the potential to create true 3D images that have all the human visual system depth cues that a natural object is perceived as possessing.
Classical interferometric holography is well known. Light scattered from an object interferes with a reference beam and forms an interference pattern which can be recorded, for example, on photographic film. To reconstruct an image, the recorded interference pattern modulates a conjugate reference beam of light so that a replica of the original wavefront is reproduced. This wavefront further propagates in space and gives the viewer, or viewers, the full impression that the object really exists in space.
A variety of computer based holographic techniques are also known in which the object used to form the hologram exists as a mathematical description. The physical interference of light is replaced by a mathematical step to calculate an appropriate interference pattern. The calculated pattern is typically termed a computer generated hologram (CGH) and may be written to any device capable of modulating light. If an updateable 3D image is required the CGH can be written to a reconfigurable diffraction panel, such as a spatial light modulator (SLM).
Coherent ray tracing (CRT) is one known technique for calculating a CGH. CRT methods essentially implement a 3D scalar diffraction integral and thus simulate the propagation of light in a conventional interferometric hologram recording. The core of the calculation is a linear summation of the E-field contribution from each point on the virtual 3D object to each pixel forming the CGH. To produce a CGH with acceptable image size and field of view using CRT techniques requires many ray tracing calculations and thus has an extremely high associated computational load. CRT methods are thus not particularly suited to producing rapidly updateable 3D images.
A CGH can also be calculated using a so-called Diffraction Specific (DS) algorithm of the type described by Lucente in “Diffraction specific fringe computation for electro-holography”, by M Lucente, Doctoral thesis dissertation, MIT Department of Electrical Engineering and Computer Science, September 1994; “Computational holographic bandwidth compression”, M Lucente, IBM Systems Journal, October 1996; and “Holographic bandwidth compression using spatial sub sampling”, M Lucente, Optical Engineering, June 1996.
The DS algorithm described by Lucente quantizes the CGH in both spatial and spectral domains. Spatial quantization is achieved by dividing the CGH into a plurality of areas, termed hogels, that each contain a plurality of pixels. The frequency spectrum of each hogel is also quantized such that each hogel has a plurality of frequency elements known as hogel vector elements. A pre-computed diffraction look-up table (LUT) is provided to map selected locations, or nodes, in the image volume to each hogel and to various hogel vector elements of that hogel.
In use, a geometric representation of the 3D image to be displayed is generated and, for each hogel of the CGH, appropriate hogel vector elements are selected from the diffraction LUT according to the particular 3D image. Each of the selected hogel vector elements is then multiplied with a basis fringe pre-computed for the particular hogel and the resulting decoded fringes are accumulated to generate a resultant decoded fringe for that hogel. The process is repeated for each hogel enabling a complete CGH to be formed. The resultant 3D image is generated by the diffraction of light from the complete set of hogels that form the CGH.
The Lucente DS algorithm thus allows the number of image point locations, or nodes, that are stored in the diffraction look up table to be selected according to the required resolution of the 3D image. More nodes will give a better image resolution, but will require more computing power to generate the CGH. Controlling the number of nodes in this manner allows image quality to be traded for reduced processing time. This DS algorithm thus enables control over the information content of the CGH such that unnecessary detail in the resultant 3D image (e.g. detail that cannot be perceived by the human eye) can be omitted.
Although the computational load associated with the Lucente DS algorithm is less than CRT methods, the calculations have still been found to take a significant amount of processing power. In particular, the computational load associated with the Lucente DS algorithm remains too high to allow dynamic 3D image production with adequate resolution using acceptable levels of computing power.
WO 02/39194 describes a method for reducing the computational load associated with a DS algorithm by providing an alternative diffraction table that stores decoded fringe information, rather than hogel vector elements, for each hogel. The use of such pre-calculated decoded fringe information in the DS algorithm means that the step of decoding hogel vector elements using basis fringes is not required; the diffraction table stores fully decoded fringes that can be written directly to the diffraction panel. This results in faster generation of the CGH because, unlike the Lucente DS method, the decoding calculations can be performed off-line. A disadvantage of this technique is that a large look up table is required to hold all the decoded fringe entries.
WO 02/39192 describes a further variation to the DS algorithm in which a multiple point sampling technique is used such that each hogel can generate a curved wavefront rather than a planar wavefront. This allows the wavefront from a single hogel to generate at least one point in the 3D image volume and/or permits defects or aberrations in the optical system to be corrected or reduced. The generation of a curved wavefront can also increase the quality of the image produced by the system.